package com.cq.hd.member.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.cq.hd.common.pagination.Page;
import com.cq.hd.member.api.dto.*;
import com.cq.hd.member.api.vo.AgentBindApplyPageVo;
import com.cq.hd.member.api.vo.AgentBindApplyVo;
import com.cq.hd.member.api.vo.MyAgentBindApplyPageVo;
import com.cq.hd.member.api.vo.PreAgentApplyVo;
import com.cq.hd.member.po.TbAgentBindApplyPo;

/**
 * <p>
 * 经纪人绑定申请记录 服务类
 * </p>
 */
public interface TbAgentBindApplyService extends IService<TbAgentBindApplyPo> {
    PreAgentApplyVo preApply(PreAgentEnterApplyDto preAgentApplyMerchantDto);

    // 经纪人绑定申请
    AgentBindApplyVo apply(AgentBindApplyDto agentApplyDto);

    // 待审核经纪人数量
    Integer waitAuditCount(Long inviterUserId);

    // 入驻列表
    Page<AgentBindApplyPageVo> page(AgentBindApplyPageDto agentBindApplyPageDto);

    // 我的入驻申请列表
    Page<MyAgentBindApplyPageVo> myApplyPage(MyAgentBindApplyPageDto myAgentBindApplyPageDto);

    // 审核经纪人绑定申请
    Boolean audit(AgentBindApplyAuditDto agentBindApplyAuditDto);

    // 查询最近的一级经纪人申请
    TbAgentBindApplyPo getLatestBusinessAgentApply(Long businessId, Long applyUserId);

}
